/**
 * promise ajax
 * @param {} url:请求地址  type：请求方式(默认为 get)  datatype：数据类型（默认 json）
 * @param type
 * @param dataType
 */
function ajax({ url = '', type = 'get', dataType = 'json' }) {
    return new Promise((resolve, reject) => {
        const xhr = new XMLHttpRequest();
        xhr.open(type, url, true);
        xhr.responseType = dataType;
        // xhr.onload = xhr.readState = 4 && xhr.status = 200
        //  会判断 xhr.readState = 4 && xhr.status = 200
        // 箭头函数 等价于 xhr.onload = function() { code }
        xhr.onload = () => {
            // 成功： 调用成功的方法
            if (xhr.status === 200) {
                resolve(xhr.response)
            } else {
                reject('error')
            }
        };
        // 失败 ： 调用失败的方法
        xhr.onerror = err => {
            reject(err)
        };
        xhr.send()
    })
}

